1 <?php
2 /**
3  * CodeIgniter
4  *
5  * An open source application development framework
for PHP
6  *
7  * This content
is released under the MIT License (MIT)
8  *
9  * Copyright (c)
2014 - 2017, British Columbia Institute of Technology
10  *
11  * Permission
is hereby granted, free of charge, to any person obtaining a copy
12  * of
this software and associated documentation files (the "Software"), to deal
13  *
in the Software without restriction, including without limitation the rights
14  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15  * copies of the Software, and to permit persons to whom the Software
is
16  * furnished to
do so, subject to the following conditions:
17  *
18  * The above copyright notice and
this permission notice shall be included in
19  * all copies or substantial portions of the Software.
20  *
21  * THE SOFTWARE IS PROVIDED
"AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27  * THE SOFTWARE.
28  *
29  * @package CodeIgniter
30  * @author EllisLab Dev Team
31  * @copyright Copyright (c)
2008 - 2014, EllisLab, Inc. (https://ellislab.com/)
32  * @copyright Copyright (c)
2014 - 2017, British Columbia Institute of Technology (http://bcit.ca/)
33  * @license http://opensource.org/licenses/MIT MIT License
34  * @link https://codeigniter.com
35  * @since Version
1.0.0
36  * @filesource
37  */
38
39 /*
40  *---------------------------------------------------------------
41  * APPLICATION ENVIRONMENT
42  *---------------------------------------------------------------
43  *
44  * You can load different configurations depending
on your
45  * current environment. Setting the environment also influences
46  * things like logging and error reporting.
47  *
48  * This can be
set to anything, but default usage is:
49  *
50  * development
51  * testing
52  * production
53  *
54  * NOTE: If you change these, also change the error_reporting() code below
55  */

56     define(
'ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
57
58 /*
59  *---------------------------------------------------------------
60  * ERROR REPORTING
61  *---------------------------------------------------------------
62  *
63  * Different environments will require different levels of error reporting.
64  * By
default development will show errors but testing and live will hide them.
65  */

66 switch
(ENVIRONMENT)
67 {
68     
case 'development':
69         error_reporting(-
1);
70         ini_set(
'display_errors', 1);
71     
break;
72
73     
case 'testing':
74     
case 'production':
75         ini_set(
'display_errors', 0);
76         
if (version_compare(PHP_VERSION, '5.3', '>='))
77         {
78             error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
79         }
80         
else
81         {
82             error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
83         }
84     
break;
85
86     
default:
87         header(
'HTTP/1.1 503 Service Unavailable.', TRUE, 503);
88         echo
'The application environment is not set correctly.';
89         exit(
1); // EXIT_ERROR
90 }

91
92 /*
93  *---------------------------------------------------------------
94  * SYSTEM DIRECTORY NAME
95  *---------------------------------------------------------------
96  *
97  * This variable must contain the name of your
"system" directory.
98  * Set the path
if it is not in the same directory as this file.
99  */

100     $system_path =
'system';
101
102 /*
103  *---------------------------------------------------------------
104  * APPLICATION DIRECTORY NAME
105  *---------------------------------------------------------------
106  *
107  * If you want
this front controller to use a different "application"
108  * directory than the
default one you can set its name here. The directory
109  * can also be renamed or relocated anywhere
on your server. If you do,
110  * use an absolute (full) server path.
111  * For more info please see the user guide:
112  *
113  * https://codeigniter.com/user_guide/general/managing_apps.html
114  *
115  * NO TRAILING SLASH!
116  */

117     $application_folder =
'application';
118
119 /*
120  *---------------------------------------------------------------
121  * VIEW DIRECTORY NAME
122  *---------------------------------------------------------------
123  *
124  * If you want to move the view directory
out of the application
125  * directory,
set the path to it here. The directory can be renamed
126  * and relocated anywhere
on your server. If blank, it will default
127  * to the standard location inside your application directory.
128  * If you
do move this, use an absolute (full) server path.
129  *
130  * NO TRAILING SLASH!
131  */

132     $view_folder =
'';
133
134
135 /*
136  * --------------------------------------------------------------------
137  * DEFAULT CONTROLLER
138  * --------------------------------------------------------------------
139  *
140  * Normally you will
set your default controller in the routes.php file.
141  * You can, however, force a custom routing
by hard-coding a
142  * specific controller
class/function here. For most applications, you
143  * WILL NOT
set your routing here, but it's an option for those
144  * special instances
where you might want to override the standard
145  * routing
in a specific front controller that shares a common CI installation.
146  *
147  * IMPORTANT: If you
set the routing here, NO OTHER controller will be
148  * callable. In essence,
this preference limits your application to ONE
149  * specific controller. Leave the function name blank
if you need
150  * to call functions dynamically via the URI.
151  *
152  * Un-comment the $routing array below to use
this feature
153  */

154     
// The directory name, relative to the "controllers" directory. Leave blank
155     
// if your controller is not in a sub-directory within the "controllers" one
156     
// $routing['directory'] = '';
157
158     
// The controller class file name. Example: mycontroller
159     
// $routing['controller'] = '';
160
161     
// The controller function you wish to be called.
162     
// $routing['function'] = '';
163
164
165 /*
166  * -------------------------------------------------------------------
167  * CUSTOM CONFIG VALUES
168  * -------------------------------------------------------------------
169  *
170  * The $assign_to_config array below will be passed dynamically to the
171  * config
class when initialized. This allows you to set custom config
172  * items or
override any default config values found in the config.php file.
173  * This can be handy
as it permits you to share one application between
174  * multiple front controller files, with each file containing different
175  * config values.
176  *
177  * Un-comment the $assign_to_config array below to use
this feature
178  */

179     
// $assign_to_config['name_of_config_item'] = 'value of config item';
180
181
182
183 // --------------------------------------------------------------------
184 // END OF USER CONFIGURABLE SETTINGS. DO NOT EDIT BELOW THIS LINE
185 // --------------------------------------------------------------------
186
187 /*
188  * ---------------------------------------------------------------
189  * Resolve the system path
for increased reliability
190  * ---------------------------------------------------------------
191  */

192
193     
// Set the current directory correctly for CLI requests
194     
if (defined('STDIN'))
195     {
196         chdir(dirname(__FILE__));
197     }
198
199     
if (($_temp = realpath($system_path)) !== FALSE)
200     {
201         $system_path = $_temp.DIRECTORY_SEPARATOR;
202     }
203     
else
204     {
205         
// Ensure there's a trailing slash
206         $system_path = strtr(
207             rtrim($system_path,
'/\\'),
208             
'/\\',
209             DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
210         ).DIRECTORY_SEPARATOR;
211     }
212
213     
// Is the system path correct?
214     
if ( ! is_dir($system_path))
215     {
216         header(
'HTTP/1.1 503 Service Unavailable.', TRUE, 503);
217         echo
'Your system folder path does not appear to be set correctly. Please open the following file and correct this: '.pathinfo(__FILE__, PATHINFO_BASENAME);
218         exit(
3); // EXIT_CONFIG
219     }

220
221 /*
222  * -------------------------------------------------------------------
223  * Now that we know the path,
set the main path constants
224  * -------------------------------------------------------------------
225  */

226     
// The name of THIS file
227     define(
'SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
228
229     
// Path to the system directory
230     define(
'BASEPATH', $system_path);
231
232     
// Path to the front controller (this file) directory
233     define(
'FCPATH', dirname(__FILE__).DIRECTORY_SEPARATOR);
234
235     
// Name of the "system" directory
236     define(
'SYSDIR', basename(BASEPATH));
237
238     
// The path to the "application" directory
239     
if (is_dir($application_folder))
240     {
241         
if (($_temp = realpath($application_folder)) !== FALSE)
242         {
243             $application_folder = $_temp;
244         }
245         
else
246         {
247             $application_folder = strtr(
248                 rtrim($application_folder,
'/\\'),
249                 
'/\\',
250                 DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
251             );
252         }
253     }
254     elseif (is_dir(BASEPATH.$application_folder.DIRECTORY_SEPARATOR))
255     {
256         $application_folder = BASEPATH.strtr(
257             trim($application_folder,
'/\\'),
258             
'/\\',
259             DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
260         );
261     }
262     
else
263     {
264         header(
'HTTP/1.1 503 Service Unavailable.', TRUE, 503);
265         echo
'Your application folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
266         exit(
3); // EXIT_CONFIG
267     }
268
269     define(
'APPPATH', $application_folder.DIRECTORY_SEPARATOR);
270
271     
// The path to the "views" directory
272     
if ( ! isset($view_folder[0]) && is_dir(APPPATH.'views'.DIRECTORY_SEPARATOR))
273     {
274         $view_folder = APPPATH.
'views';
275     }
276     elseif (is_dir($view_folder))
277     {
278         
if (($_temp = realpath($view_folder)) !== FALSE)
279         {
280             $view_folder = $_temp;
281         }
282         
else
283         {
284             $view_folder = strtr(
285                 rtrim($view_folder,
'/\\'),
286                 
'/\\',
287                 DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
288             );
289         }
290     }
291     elseif (is_dir(APPPATH.$view_folder.DIRECTORY_SEPARATOR))
292     {
293         $view_folder = APPPATH.strtr(
294             trim($view_folder,
'/\\'),
295             
'/\\',
296             DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
297         );
298     }
299     
else
300     {
301         header(
'HTTP/1.1 503 Service Unavailable.', TRUE, 503);
302         echo
'Your view folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
303         exit(
3); // EXIT_CONFIG
304     }
305
306     define(
'VIEWPATH', $view_folder.DIRECTORY_SEPARATOR);
307
308 /*
309  * --------------------------------------------------------------------
310  * LOAD THE BOOTSTRAP FILE
311  * --------------------------------------------------------------------
312  *
313  * And away we go...
314  */

315 require_once BASEPATH.
'core/CodeIgniter.php';



Source code Website bán hàng online PHP – MVC 80.797 lượt xem

Gõ tìm kiếm nhanh...